内存统计案例

平台:Takoyaki

DDR:64M

LX_MEM : 63M

开机到主页:cat /proc/meminfo

  1. MemTotal: 36248 kB

  2. CMA预留2M :

    cma: Reserved 2 MiB at 0x22600000

    2048K cma-reserved

  3. mma预留E00000 = 14M (包含fb1:4900k (ARGB888) fb2:200K)

  4. mmu预留900000 = 9M

  5. kernel reserved:4712K

    Memory: 34200K/40960K available (2177K kernel code, 328K rwdata, 1116K rodata, 156K init, 157K bss, 4712K reserved, 2048K cma-reserved)

  6. 63M - (cma+mma+mmu+kernel_reserved) = 33.4 = MemTotal - cma = 35.4 - 2 =33.4

    1. MMU最大场景:主机呼叫过程中

      此时MMU还有436K余量

    2. MMA最大场景:视频通话过程中

      此时mma还有31b000 = 3.105M (预计这里可以再释放2.5M)

      mma heap name heap_base_cpu_bus_addr length chunk_mgr_avail
      
      mma_heap_name0 22800000 e00000 31b000
      

      / # cat /proc/mi_modules/mi_sys_mma/mma_heap_name0 child -1 761 exit

      mma heap name heap_base_cpu_bus_addr length chunk_mgr_avail
      mma_heap_name0 22800000 e00000 31b000
      chunk_mgr info:   offset       length         avail
                                  0           e00000      31b000
      

    each chunk info:

    offset length used_flag task_name
    0 20000 1 CMDMEM
    20000 4c9000 1 fbdev
    4e9000 258000 1 gui
    741000 32000 1 fbdev
    773000 10b000 1 gui_readbmp1
    87e000 14000 1 gui_readbmp1
    892000 1000 1 gui_readbmp1
    893000 1000 1 gui_readbmp1
    894000 8000 1 gui_readbmp1
    89c000 2000 1 gui_readbmp1
    89e000 2000 1 gui_readbmp1
    8a0000 2000 1 gui_readbmp1
    8a2000 2000 1 gui_readbmp1
    8a4000 2000 1 gui_readbmp1
    8a6000 2000 1 gui_readbmp1
    8a8000 2000 1 gui_readbmp1
    8aa000 2000 1 gui_readbmp1
    8ac000 1000 1 gui_readbmp1
    8ad000 4000 1 gui_readbmp1
    8b1000 4000 1 gui_readbmp1
    8b5000 4000 1 gui_readbmp1
    8b9000 4000 1 gui_readbmp1
    8bd000 5000 1 gui_readbmp1
    8c2000 4000 1 gui_readbmp1
    8c6000 5000 1 gui_readbmp1
    8cb000 4000 1 gui_readbmp1
    8cf000 5000 1 gui_readbmp1
    8d4000 4000 1 gui_readbmp1
    8d8000 5000 1 gui_readbmp1
    8dd000 4000 1 gui_readbmp1
    8e1000 4000 1 gui_readbmp1
    8e5000 4000 1 gui_readbmp1
    8e9000 4000 1 gui_readbmp1
    8ed000 4000 1 gui_readbmp1
    8f1000 4000 1 gui_readbmp1
    8f5000 4000 1 gui_readbmp1
    8f9000 1000 1 gui_readbmp1
    8fa000 1000 1 gui_readbmp1
    8fb000 6000 1 gui_readbmp1
    901000 6000 1 gui_readbmp1
    907000 6000 1 gui_readbmp1
    90d000 6000 1 gui_readbmp1
    913000 6000 1 gui_readbmp1
    919000 6000 1 gui_readbmp1
    91f000 6000 1 gui_readbmp1
    925000 6000 1 gui_readbmp1
    92b000 6000 1 gui_readbmp1
    931000 4000 1 gui_readbmp1
    935000 8000 1 gui_readbmp1
    93d000 6000 1 gui_readbmp1
    943000 6000 1 gui_readbmp1
    949000 6000 1 gui_readbmp1
    94f000 6000 1 gui_readbmp1
    955000 4000 1 gui_readbmp1
    959000 4000 1 gui_readbmp1
    95d000 4000 1 gui_readbmp1
    961000 4000 1 gui_readbmp1
    965000 4000 1 gui_readbmp1
    969000 6000 1 gui_readbmp1
    96f000 6000 1 gui_readbmp1
    975000 6000 1 gui_readbmp1
    97b000 6000 1 gui_readbmp1
    981000 6000 1 gui_readbmp1
    987000 6000 1 gui_readbmp1
    98d000 6000 1 gui_readbmp1
    993000 b000 1 gui_readbmp1
    99e000 25000 1 gui_readbmp1
    9c3000 9000 1 gui_readbmp1
    9cc000 9000 1 gui_readbmp1
    9d5000 9000 1 gui_readbmp1
    9de000 9000 1 gui_readbmp1
    9e7000 1000 1 gui_readbmp1
    9e8000 1b000 1 gui_readbmp1
    a03000 3000 1 gui_readbmp1
    a06000 50000 1 gui_readbmp1
    a56000 7000 1 gui_readbmp1
    a5d000 7000 1 gui_readbmp1
    a64000 7000 1 gui_readbmp1
    a6b000 1000 1 gui_readbmp1
    a6c000 8000 1 gui_readbmp1
    a74000 2000 1 gui_readbmp1
    a76000 1000 1 gui_readbmp1
    a77000 10000 1 gui_readbmp1
    a87000 10000 1 gui_readbmp1
    a97000 11000 1 gui_readbmp1
    aa8000 11000 1 gui_readbmp1
    ab9000 7000 1 gui_readbmp1
    ac0000 7000 1 gui_readbmp1
    ac7000 7000 1 gui_readbmp1
    ace000 7000 1 gui_readbmp1
    ad5000 7000 1 gui_readbmp1
    adc000 7000 1 gui_readbmp1
    ae3000 1000 1 gui_readbmp1
    ae4000 1000 1 gui_readbmp1
    ae5000 31b000 0 NA
    

...